package com.platform.modules.sys.entity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import javax.validation.constraints.NotBlank;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import lombok.Data;

/**
 * 角色
 *
 * @author 肖亮
 */
@Data
@TableName("SYS_ROLE")
@ApiModel(value="角色实体类",description="角色实体类")
public class SysRoleEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	 /**
	  * 角色ID
	  */
	@ApiModelProperty(value="角色ID",example="")
	@TableId
	private String roleId;

	 /**
	  * 角色名称
	  */
	@ApiModelProperty(value="角色名称",example="")
	@NotBlank(message = "角色名称不能为空")
	private String roleName;

	 /**
	  * 备注
	  */
	@ApiModelProperty(value="备注",example="")
	private String remark;

	 /**
	  * 创建者ID
	  */
	@ApiModelProperty(value="创建者ID",example="")
	private String createUserId;
	
	 /**
	  *角色单位类型
	  */
	@ApiModelProperty(value="角色单位类型",example="")
	private String roleOrgType;

	 /**
	  *创建者所属机构
	  */
	@ApiModelProperty(value="创建者所属机构",example="")
	private String createUserOrgNo;

	 /**
	  *创建时间
	  */
	@ApiModelProperty(value="创建时间",example="")
	private Date createTime;
	
	 /**
	  *使用状态(0,使用 1,禁用)
	  */
	@ApiModelProperty(value="使用状态(0,使用 1,禁用)",example="")
	private String useStatus;
	
	 /**
	  * 角色编码
	  */
	@ApiModelProperty(value="角色编码",example="")
	private String roleCode;
	////////////////非数据库字段
	 /**
	  *角色所属菜单集合
	  */
	@ApiModelProperty(value="角色所属菜单集合",example="")
	@TableField(exist = false)
	private List<String> menuIdList;

	 /**
	  *角色所属单位id集合
	  */
	@ApiModelProperty(value="角色所属单位id集合",example="")
	@TableField(exist = false)
	private List<String> orgNoList;
}
